Timm Bäder [Mon, 10 Jul 2017 07:34:43 +0000 (09:34 +0200)]
widget: Don't propagate size-allocate if only the position changed
We can do this now so we should
Timm Bäder [Sun, 9 Jul 2017 14:42:19 +0000 (16:42 +0200)]
widget: Fix priv dereference in size_allocate_with_baseline
Accessing ->priv is only safe *after* the GTK_IS_WIDGET precondition, so
use the get_instance_private function instead.
Timm Bäder [Sun, 9 Jul 2017 12:30:45 +0000 (14:30 +0200)]
widget: Fix a widget/container mixup
Timm Bäder [Sun, 9 Jul 2017 08:21:30 +0000 (10:21 +0200)]
window: Fix resizing with solid-csd
We can't use a 20px resize handle in that case so fall back to the
padding area of the window. Still ugly but it works.
Timm Bäder [Sun, 9 Jul 2017 08:02:34 +0000 (10:02 +0200)]
gtkapplication: g_dbus_proxy_new_sync can return NULL
Specifically, in the case where @error is set.
Timm Bäder [Sun, 9 Jul 2017 06:14:42 +0000 (08:14 +0200)]
window: Fix annotations in get_size and get_position
Timm Bäder [Sat, 8 Jul 2017 19:10:17 +0000 (21:10 +0200)]
widget: Remove gtk_cairo_transform_to_window
Useless in a world without windows and cairo.
Timm Bäder [Sat, 8 Jul 2017 10:04:44 +0000 (12:04 +0200)]
popover: Add a contents node
Remove the special case in gtkwidget.c where we didn't draw any css
background/border for popovers. Instead, rely on themes to not style the
popover node and add a contents gizmo that gets the actual css styling.
We then requeste enough space for the popover to draw both the contents
and the arrow on the side.
Timm Bäder [Sat, 8 Jul 2017 08:33:45 +0000 (10:33 +0200)]
widget: Draw css box after pushing a opacity node
Timm Bäder [Sat, 8 Jul 2017 07:56:41 +0000 (09:56 +0200)]
Fix a few documentation issues
Timm Bäder [Sat, 8 Jul 2017 07:42:33 +0000 (09:42 +0200)]
testpopover: Remove expand GtkBox child properties
Timm Bäder [Wed, 5 Jul 2017 15:46:37 +0000 (17:46 +0200)]
widget: Move get_resize_needed to gtkwidget.c
It's only used in there so we don't need it in the private header.
Timm Bäder [Wed, 5 Jul 2017 14:04:59 +0000 (16:04 +0200)]
notebook: Allocate unmapped tabs
Timm Bäder [Wed, 5 Jul 2017 12:13:41 +0000 (14:13 +0200)]
fix a few documentation problems
Timm Bäder [Wed, 5 Jul 2017 11:09:32 +0000 (13:09 +0200)]
centerbox: Add some missing return value annotations
Timm Bäder [Wed, 5 Jul 2017 09:09:27 +0000 (11:09 +0200)]
box: Ignore baselines when vertical
For now.
Timm Bäder [Wed, 5 Jul 2017 06:31:15 +0000 (08:31 +0200)]
bbox: Don't report a horizontal baseline
Timm Bäder [Tue, 4 Jul 2017 17:02:04 +0000 (19:02 +0200)]
widget: Propagate correct baseline
Timm Bäder [Tue, 4 Jul 2017 17:00:00 +0000 (19:00 +0200)]
widget: Always pass on baselines
Timm Bäder [Tue, 4 Jul 2017 13:41:27 +0000 (15:41 +0200)]
widget: Simplify snapshot_child
Timm Bäder [Tue, 4 Jul 2017 13:22:58 +0000 (15:22 +0200)]
entry: Fix baseline alignment
Since we only look at priv->text_baseline later on, it would be useful
to actually set it to a useful value.
Timm Bäder [Tue, 4 Jul 2017 13:06:18 +0000 (15:06 +0200)]
widget: Draw debug nodes for widget margins too
Timm Bäder [Tue, 4 Jul 2017 12:59:02 +0000 (14:59 +0200)]
widget: Fix copy&paste error when creating debug nodes
Timm Bäder [Tue, 4 Jul 2017 09:35:06 +0000 (11:35 +0200)]
sizerequest: Add more assertions for baselines
min baselines must be <= natural baselines and both must lie inside the
content size of the widget.
Timm Bäder [Sun, 2 Jul 2017 18:46:31 +0000 (20:46 +0200)]
widget: Unset PRELIGHT and ACTIVE state flags in unmap
Timm Bäder [Sun, 2 Jul 2017 18:45:23 +0000 (20:45 +0200)]
button: Reset in_button state in unmap
Since at that point the point is clearly not in the button anymore.
Timm Bäder [Sun, 2 Jul 2017 12:16:09 +0000 (14:16 +0200)]
label: Fix get_layout_index
Properly translate the given coordinates to layout coordinates. Fixes
clicking links and selecting text.
Timm Bäder [Sun, 2 Jul 2017 07:00:15 +0000 (09:00 +0200)]
textview: Invalidate entire widget
Timm Bäder [Sun, 2 Jul 2017 06:29:07 +0000 (08:29 +0200)]
textview: Remove size_changed check in size-allocate
It's broken and we only hit size-allocate when the size changes anyway.
Timm Bäder [Sat, 1 Jul 2017 17:21:10 +0000 (19:21 +0200)]
linkbutton: Remove useless unrealize implementation
Timm Bäder [Sat, 1 Jul 2017 17:15:01 +0000 (19:15 +0200)]
stack: Fix under transitions
make sure we initialize both width and height with proper values.
Timm Bäder [Sat, 1 Jul 2017 16:16:24 +0000 (18:16 +0200)]
eventbox: Remove window
Timm Bäder [Sat, 1 Jul 2017 16:15:41 +0000 (18:15 +0200)]
centerbox: Avoid accessing unset widgets
Timm Bäder [Sat, 1 Jul 2017 06:47:51 +0000 (08:47 +0200)]
textview: Use correct size for cairo node bounds
Timm Bäder [Fri, 30 Jun 2017 12:01:59 +0000 (14:01 +0200)]
window: Move updates debugging to GtkWidget
Which has the necessary information.
Timm Bäder [Fri, 30 Jun 2017 11:40:23 +0000 (13:40 +0200)]
scale: Fix mark positions
Someone else will have to fix the css.
Timm Bäder [Fri, 30 Jun 2017 11:21:06 +0000 (13:21 +0200)]
range: Fix get_range_rect
get_own_allocation's position is relative to the given widget's origin,
not the parent.
Timm Bäder [Fri, 30 Jun 2017 11:10:32 +0000 (13:10 +0200)]
range: Fix mark positions
The values returned by gtk_range_compute_slider_position are relative
to the trough_widget (the slider's parent), not the slider widget
itself.
Timm Bäder [Fri, 30 Jun 2017 11:08:00 +0000 (13:08 +0200)]
scale: Remove custom indicator drawing
it's a css node so we can simply use the background instead of the
foreground color in the theme.
Timm Bäder [Fri, 30 Jun 2017 10:40:40 +0000 (12:40 +0200)]
scale: Fix mark indicator allocations
Timm Bäder [Fri, 30 Jun 2017 09:49:41 +0000 (11:49 +0200)]
headerbar: don't measure own size
This is fallout from an earlier commit, we should be checking the
child's size of course, not repeatedly the headerbar's.
Timm Bäder [Thu, 29 Jun 2017 13:28:47 +0000 (15:28 +0200)]
levelbar: Don't underallocate block widgets
Timm Bäder [Thu, 29 Jun 2017 13:28:24 +0000 (15:28 +0200)]
range: Avoid division by zero
Timm Bäder [Thu, 29 Jun 2017 10:18:40 +0000 (12:18 +0200)]
gtk4-demo: Add widgetbowl demo
Same as fishbowl, but with widgets
Timm Bäder [Wed, 28 Jun 2017 14:19:22 +0000 (16:19 +0200)]
popover: set the shape on the correct window
the parent window is now the toplevel's window.
Timm Bäder [Wed, 28 Jun 2017 13:57:42 +0000 (15:57 +0200)]
switch: Put the slider node last
Makes sense since we draw it over both labels. Also make this obvious by
using the default snapshot implementation.
Timm Bäder [Wed, 28 Jun 2017 09:17:03 +0000 (11:17 +0200)]
drawingarea: Remove useless line from code example
backgrounds are drawn automatically now.
Timm Bäder [Wed, 28 Jun 2017 06:19:35 +0000 (08:19 +0200)]
Fix a few allocation coordinates & sizes
Timm Bäder [Wed, 28 Jun 2017 05:46:46 +0000 (07:46 +0200)]
entry: Fix undershoot position
Timm Bäder [Wed, 28 Jun 2017 05:38:54 +0000 (07:38 +0200)]
paned: Fix clip node coordinates
Timm Bäder [Wed, 28 Jun 2017 05:25:34 +0000 (07:25 +0200)]
adwaita: Adjust entry progress styling
Now that the entry>progress node is a full GtkProgressBar, we need to
apply the style to its trough>progress node.
Timm Bäder [Wed, 28 Jun 2017 05:25:23 +0000 (07:25 +0200)]
entry: Simplify progress size allocation
Timm Bäder [Tue, 27 Jun 2017 18:48:14 +0000 (20:48 +0200)]
calendar: Remove all input windows
and simultaneously fix input! \o/
Timm Bäder [Tue, 27 Jun 2017 18:28:15 +0000 (20:28 +0200)]
entry: Fix text position
We need to adjust the layout coordinates depending on priv->text_x,
sinec that one accounts for the width of the left icon.
Timm Bäder [Tue, 27 Jun 2017 17:53:59 +0000 (19:53 +0200)]
treeview: Remove bin_window
Timm Bäder [Tue, 27 Jun 2017 15:12:00 +0000 (17:12 +0200)]
label: Use the correct size in snapshot()
Timm Bäder [Tue, 27 Jun 2017 14:57:25 +0000 (16:57 +0200)]
aboutdialog: Remove unused image
Timm Bäder [Tue, 27 Jun 2017 12:36:29 +0000 (14:36 +0200)]
testbaseline: Add a horizontal spinbutton
Timm Bäder [Tue, 27 Jun 2017 11:27:58 +0000 (13:27 +0200)]
Fix baselines wrt css values
The reported minimum baseline is for the reported min height, but if the
css min-height is greater than that, we need to account for that fact
when saving the baseline.
Since the reported baseline is relative to the widget's origin, we also
need to add the top values for margin, border and padding to the
reported baseline.
Timm Bäder [Tue, 27 Jun 2017 10:28:25 +0000 (12:28 +0200)]
widget: black is the new red
Timm Bäder [Tue, 27 Jun 2017 09:44:22 +0000 (11:44 +0200)]
notebook: Fix css node ordering
Aaand all the unit tests pass again.
Timm Bäder [Tue, 27 Jun 2017 09:11:57 +0000 (11:11 +0200)]
iconview: Remove bin_window
Timm Bäder [Mon, 26 Jun 2017 12:50:48 +0000 (14:50 +0200)]
entry: Fix node ordering
Fix the icon order
Timm Bäder [Mon, 26 Jun 2017 12:23:36 +0000 (14:23 +0200)]
testsuite: Update expected css node output
Timm Bäder [Mon, 26 Jun 2017 10:02:17 +0000 (12:02 +0200)]
paned: Remove assertion in get_child_property
Passing the third child (the pane separator) is possible and shouldn't
cause the process to abort.
Timm Bäder [Mon, 26 Jun 2017 10:00:20 +0000 (12:00 +0200)]
main: Protect against non-GtkWindow toplevels
Timm Bäder [Mon, 26 Jun 2017 09:48:33 +0000 (11:48 +0200)]
inspector: Use GtkWidget::pick when picking widgets
Timm Bäder [Sun, 25 Jun 2017 17:01:41 +0000 (19:01 +0200)]
container: Remove get_children_clip
Unused.
Timm Bäder [Sun, 25 Jun 2017 17:00:30 +0000 (19:00 +0200)]
stack: Compute clip directly
Timm Bäder [Sun, 25 Jun 2017 16:55:42 +0000 (18:55 +0200)]
buttonbox: Compute clip directly
Timm Bäder [Sun, 25 Jun 2017 16:51:31 +0000 (18:51 +0200)]
modelbutton: Compute clip directly
Timm Bäder [Sun, 25 Jun 2017 16:51:23 +0000 (18:51 +0200)]
flowbox: Compute clip directly
Timm Bäder [Sun, 25 Jun 2017 16:27:10 +0000 (18:27 +0200)]
spinbutton: Fix gesture state
We claimed the gesture previously to keep it from propagating to the
underlying entry, but now that the entry is in a box with the two
buttons, we can do this properly and restore the previous long-press
behavior.
Timm Bäder [Sat, 24 Jun 2017 05:47:55 +0000 (07:47 +0200)]
checkmenuitem: Fix indicator state
We need to remove the inconsistent and checked state first so we
actually remove it.
Timm Bäder [Sat, 24 Jun 2017 05:46:19 +0000 (07:46 +0200)]
widget-factory: Show the status bar by default
Since the action is also active by default.
Timm Bäder [Fri, 23 Jun 2017 18:33:52 +0000 (20:33 +0200)]
testnotebookdnd: quit when the toplevel gets closed
Timm Bäder [Wed, 21 Jun 2017 19:31:08 +0000 (21:31 +0200)]
menu: Popup at window coordinates if widget is given
Since widget allocations are now relative to the parent's origin, we
need to pass the window allocation here.
Timm Bäder [Wed, 21 Jun 2017 15:54:47 +0000 (17:54 +0200)]
window: Don't use allocated size in snapshot
Those are the wrong values.
Timm Bäder [Wed, 21 Jun 2017 11:25:41 +0000 (13:25 +0200)]
popover: Create subsurface on wayland
Timm Bäder [Wed, 21 Jun 2017 10:15:47 +0000 (12:15 +0200)]
widget: Fix drawing invalidation with windowed widgets
E.g. popovers. Find the parent of the given widget with the window and
invalidate the given region in that window.
Timm Bäder [Wed, 21 Jun 2017 10:14:00 +0000 (12:14 +0200)]
popover: "Fix" child allocation
This is still wrong but will be fixed in the future.
Timm Bäder [Wed, 21 Jun 2017 09:49:53 +0000 (11:49 +0200)]
window: Stop wrapping popovers in another window
GtkPopover is already a windowed widget.
Timm Bäder [Sun, 18 Jun 2017 13:45:42 +0000 (15:45 +0200)]
Replace a few get_content_allocation calls with get_content_size
The position of the content allocation is almost never relevant since
it's 0/0 for measure, size_allocate and snapshot.
Timm Bäder [Sun, 18 Jun 2017 11:17:00 +0000 (13:17 +0200)]
Remove all widget style property code
Timm Bäder [Sun, 18 Jun 2017 10:54:27 +0000 (12:54 +0200)]
treeviewaccessible: Don't rely on nonexistent style properties
The expander-size style property has been gone for a long time.
Timm Bäder [Sun, 18 Jun 2017 10:52:20 +0000 (12:52 +0200)]
adwaita: Remove style properties
They don't exist anymore.
Timm Bäder [Sun, 18 Jun 2017 10:51:23 +0000 (12:51 +0200)]
notebook: Remove style properties
Hardcode the default values until someone comes up with a proposal for a
better way.
Timm Bäder [Sun, 18 Jun 2017 10:46:30 +0000 (12:46 +0200)]
calendar: Remove style properties
Hardcode the default values until someone comes and fixes the actual
widget.
Timm Bäder [Sun, 18 Jun 2017 10:29:59 +0000 (12:29 +0200)]
widget: Remove _set_simple_clip
Unused.
Timm Bäder [Sun, 18 Jun 2017 10:29:49 +0000 (12:29 +0200)]
spinner: Use get_content_size
Timm Bäder [Sun, 18 Jun 2017 10:25:39 +0000 (12:25 +0200)]
pathbar: Compute widget clip directly
Instead of relying on gtk_widge_set_simple_clip
Timm Bäder [Sun, 18 Jun 2017 10:21:34 +0000 (12:21 +0200)]
toolitem: Remove size_allocate implementation
A GtkToolItem is a GtkBin and that already does exactly what this
implementation did.
Timm Bäder [Sun, 18 Jun 2017 08:15:06 +0000 (10:15 +0200)]
widget: Transform clips into right coordinate space
The values passed to gtk_widget_set_clip are relative to the widget's
origin, but we need the values to be relative to priv->allocation.
Timm Bäder [Sun, 18 Jun 2017 08:13:11 +0000 (10:13 +0200)]
paned: Draw handle separator at the right location
Timm Bäder [Sun, 18 Jun 2017 08:10:51 +0000 (10:10 +0200)]
paned: Make sure we set the correct clips
They are still too big, i.e. clipped-off children enlarge the paned's
clip but at least redrawing works and smaller clips are just an
optimization.
Timm Bäder [Sat, 17 Jun 2017 12:18:14 +0000 (14:18 +0200)]
switch: Remove in_switch flag
It's pretty simple and less code to just check whether the gesture
coords are inside the widget at the one place where we actually used the
flag.
Timm Bäder [Sat, 17 Jun 2017 12:13:29 +0000 (14:13 +0200)]
widget: Consider opacity when drawing toplevels
This used to work in gtk3 and is used e.g. in the inspector when using
wayland.
Timm Bäder [Sat, 17 Jun 2017 11:16:50 +0000 (13:16 +0200)]
switch: Fix handle dragging with padding applied
We only move the handle inside the content allocation, so we need to use
the content width when calculating the new handle_pos.
Timm Bäder [Sat, 17 Jun 2017 08:59:03 +0000 (10:59 +0200)]
layout: Remove bin_window
Timm Bäder [Sat, 17 Jun 2017 08:55:47 +0000 (10:55 +0200)]
fixed: Remove window